package come.example.domain.strategy.service.armory;

/*
策略抽奖调度（一个接口就一个功能）
 */

public interface IStrategyDispatch {

    Integer getRandomAwardId(Long strategyId);

    //抽奖除了有策略id还有权重值
    Integer getRandomAwardId(Long strategyId, String ruleWeightValue);

    /**
     * 根据策略ID和奖品ID，扣减奖品缓存库存
     *
     * @param strategyId
     * @param awardId
     * @return
     */
    Boolean subtractionAwardStock(Long strategyId, Integer awardId);
}
